fix(cli): expose Vitest 5 options in test help - #2809
Conversation
liangmiQwQ
left a comment
There was a problem hiding this comment.
Hi! Please update this snapshot to fix CI failing https://github.com/voidzero-dev/vite-plus/blob/2d2548275120cc6f66054dca23b1dba39c494793/crates/vp_cli_snapshots/tests/cli_snapshots/fixtures/global_cli_fallback/snapshots/global_cli_fallback.md
|
@liangmiQwQ I'm curious why this skill at https://github.com/voidzero-dev/vite-plus/blob/main/.claude/skills/sync-upstream-cli-help/SKILL.md didn't take effect. |
@fengmk2 I think the reason is that we manually update Vitest major in #2551, which won't trigger the skill. |
liangmiQwQ
left a comment
There was a problem hiding this comment.
LGTM if CI is green.
Task cache settings now live under `cache`, and `vp migrate` moves existing task settings for you. `vp lint` and `vp fmt` run from a package directory now pick the same config as your editor, and piped `vp` output exits cleanly. ### Breaking Changes Task cache settings in `run.tasks` now go inside `cache` ([#2813](#2813), [#2814](#2814), [#2823](#2823), [vite-task#749](voidzero-dev/vite-task#749)), by @wan9chi. | Old (top level of a task) | New | | --- | --- | | `env` | `cache.env` | | `untrackedEnv` | `cache.untrackedEnv` | | `input` | `cache.input` | | `output` | `cache.output` | `cache: true` is the same as `cache: {}`. After upgrading, a task that still uses the old top-level fields fails with an error that points to `vp migrate`. Run `vp migrate` to move the fields in `vite.config.*` for the workspace root and every package. It warns about tasks in `vite.config.*` that it cannot rewrite safely. Tasks created in other modules, such as by a shared helper function, are not detected, so move their fields by hand; the error lists every task that still needs it. Projects whose tasks do not use these fields need no changes. See the [task cache migration rules](https://viteplus.dev/guide/migrate-rules#task-cache-configuration) and the [`cache` reference](https://viteplus.dev/config/run#cache). ### Highlights - `vp lint` and `vp fmt` run from a package directory now use the same config as Oxlint, Oxfmt, and the language server, so results match your editor. `vp check` still applies the workspace-root settings ([#2807](#2807)), by @fengmk2. - Global `vp` commands now exit cleanly when piped into a command that closes early, such as `vp --version | head -n 1`, instead of aborting with exit code 134 ([#2785](#2785), [#2793](#2793)), by @naokihaba. - Cached tasks on macOS no longer intermittently fail with `oils I/O error (main): No such process` ([vite-task#703](voidzero-dev/vite-task#703)), by @lifeiscontent. ### Features - The bundled tools update `vite@8.3.0` -> `vite@8.3.1`, `rolldown@1.2.9` -> `rolldown@1.2.11`, and `oxlint-tsgolint@7.0.2002` -> `oxlint-tsgolint@7.0.2003` ([#2805](#2805), [#2812](#2812)), by @voidzero-guard[bot]. ### Fixes & Enhancements - Async `defineConfig` callbacks now type-check lint and format options, such as `'warn'` rule severities, the same way as synchronous callbacks, so configs updated by `vp migrate` no longer fail with `TS2769` ([#2803](#2803)), by @TheAlexLichter. - `vp test --help` now lists the Vitest 5 options `--repeats`, `--injectCjsGlobals`, `--fsModuleCache`, `--fsModuleCachePath`, and `--sharedViteServer` ([#2809](#2809)), by @Marve10s. - On Windows, `vp run` now matches environment variable names regardless of letter case ([vite-task#747](voidzero-dev/vite-task#747)), by @wan9chi. ### Docs - The copy prompt dialog no longer nests scroll areas and shows clearer copy feedback ([#2794](#2794), [#2799](#2799)), by @liangmiQwQ and @Boshen. ### Chore - Snapshot tests share prepared packages and one Chromium process, run faster on every platform, and no longer read the live npm registry in the standalone npm fallback case ([#2771](#2771), [#2786](#2786), [#2797](#2797)), by @fengmk2 and @voidzero-guard[bot]. - The snapshot setup check links the local `vite-plus` package into its reference home instead of installing the version under release from npm, so it passes before that version is published ([#2819](#2819)), by @wan9chi. - The preview migration harness installs a project's committed dependencies before running `vp migrate`, so the Vitest 5 migration can read the original Vitest version ([#2822](#2822)), by @wan9chi. - The standalone install workflow loads the generated environment before running `vp env doctor` ([#2790](#2790)), by @naokihaba. ### Bundled Versions | Tool | Version | Source | | --- | --- | --- | | vite | `8.3.1` | [`39ddf7c`](vitejs/vite@39ddf7c) | | rolldown | `1.2.11` | [`8df4219`](rolldown/rolldown@8df4219) | | tsdown | `0.23.0` | [npm](https://npmx.dev/package/tsdown/v/0.23.0) | | vitest | `5.0.1` | [npm](https://npmx.dev/package/vitest/v/5.0.1) | | oxlint | `1.85.0` | [npm](https://npmx.dev/package/oxlint/v/1.85.0) | | oxlint-tsgolint | `7.0.2003` | [npm](https://npmx.dev/package/oxlint-tsgolint/v/7.0.2003) | | oxfmt | `0.70.0` | [npm](https://npmx.dev/package/oxfmt/v/0.70.0) | ### Upgrade ```bash vp upgrade ``` ### New Contributors @Marve10s **Full Changelog**: v1.0.0-rc.0...v1.0.0-rc.1 --- Merging this PR will trigger the release workflow. --------- Co-authored-by: voidzero-guard[bot] <278573678+voidzero-guard[bot]@users.noreply.github.com> Co-authored-by: wan9chi <me@wan9chi.com>
vp test --helpomits five top-level options accepted by the bundled Vitest 5, so users cannot discover them through the CLI. The static help list also still refers toexperimental.fsModuleCacheafter that option moved to the top level.Add
--repeats,--injectCjsGlobals,--fsModuleCache,--fsModuleCachePath, and--sharedViteServerwith their upstream descriptions and defaults, and correct the--clearCachedescription. Update the recorded output for both help aliases. The change is limited to help text and its snapshots.Fixes #2804.